using System;
using System.ComponentModel.DataAnnotations;

namespace Traceability.API.Dtos
{
    /// <summary>
    /// 溯源信息数据传输对象
    /// </summary>
    public class TraceabilityInfoDto
    {
        /// <summary>
        /// 溯源信息ID
        /// </summary>
        public int TraceabilityId { get; set; }

        /// <summary>
        /// 商品ID
        /// </summary>
        public int ProductId { get; set; }

        /// <summary>
        /// 商品名称
        /// </summary>
        public string ProductName { get; set; }

        /// <summary>
        /// 生产批次
        /// </summary>
        public string ProductionBatch { get; set; }

        /// <summary>
        /// 保质期（天数）
        /// </summary>
        public int ShelfLife { get; set; }

        /// <summary>
        /// 生产许可证号
        /// </summary>
        public string ProductionLicenseNumber { get; set; }

        /// <summary>
        /// 生产企业
        /// </summary>
        public string ManufacturerName { get; set; }

        /// <summary>
        /// 信息完整度（百分比）
        /// </summary>
        public decimal InformationCompleteness { get; set; }

        /// <summary>
        /// 照片URL
        /// </summary>
        public string PhotoUrl { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        public string CreatedBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreatedTime { get; set; }

        /// <summary>
        /// 修改人
        /// </summary>
        public string ModifiedBy { get; set; }

        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? ModifiedTime { get; set; }

        /// <summary>
        /// 是否已删除
        /// </summary>
        public bool IsDeleted { get; set; }
    }
} 